LVM (Logical Volume Manager) یک لایه انتزاعی بین دیسکهای فیزیکی و سیستم فایل است که به شما امکان میدهد فضای ذخیرهسازی را بهصورت پویا و انعطافپذیر مدیریت کنید. با LVM میتوانید چند دیسک را به یک حجم منطقی بزرگ ترکیب کنید، اندازه پارتیشنها را بدون از دست دادن داده تغییر دهید و از قابلیتهای پیشرفتهای مانند Snapshot استفاده کنید.
قبل از شروع، باید دیسکهای موجود در سیستم را شناسایی کنید. دو روش اصلی برای این کار وجود دارد:
lsblk
توضیح: lsblk ساختار دیسکها و پارتیشنها را به صورت درختی نمایش میدهد. ستون TYPE نشان میدهد که هر مورد یک دیسک (disk) یا پارتیشن (part) است.
fdisk -l
توضیح: fdisk -l اطلاعات دقیقتری از هر پارتیشن مانند اندازه، نوع و شروع/پایان سکتورها را نمایش میدهد.
پس از شناسایی دیسکها و پارتیشنها، باید آنها را به LVM اضافه کنیم. این کار با دستور pvcreate انجام میشود. توجه: این دستور تمام دادههای موجود روی پارتیشن را پاک میکند!
توضیح: pvcreate /dev/sdb1 /dev/sdb2 دو پارتیشن /dev/sdb1 و /dev/sdb2 را به عنوان Physical Volume به LVM اضافه میکند. خروجی نشان میدهد که هر دو با موفقیت ایجاد شدهاند.
توضیح: pvs یا pvdisplay لیست Physical Volumeهای موجود را نمایش میدهد. در این مرحله، VG (Volume Group) هنوز خالی است.
یک یا چند Physical Volume را با هم ترکیب کرده و یک Volume Group ایجاد میکنیم.
توضیح: vgcreate myvg /dev/sdb1 /dev/sdb2 یک Volume Group به نام myvg ایجاد میکند که شامل دو Physical Volume /dev/sdb1 و /dev/sdb2 است.
توضیح: vgs یا vgdisplay اطلاعات Volume Groupها را نشان میدهد. VSize نشاندهنده حجم کل گروه و VFree فضای آزاد است.
از فضای Volume Group، یک Logical Volume (مشابه پارتیشن) ایجاد میکنیم.
توضیح: lvcreate -n mylv -L 10G myvg یک Logical Volume به نام mylv با اندازه ۱۰ گیگابایت از Volume Group myvg ایجاد میکند. گزینهها:
-n → نام Logical Volume-L → اندازه (مثلاً 10G, 500M)myvg → نام Volume Group
توضیح: lvs یا lvdisplay لیست Logical Volumeها را نمایش میدهد. LSize اندازه هر LV را نشان میدهد.
Logical Volume در مسیر /dev/mapper/ قرار میگیرد. در این مثال، مسیر کامل /dev/mapper/myvg-mylv است.
مانند یک پارتیشن معمولی، Logical Volume را فرمت کرده و mount میکنیم.
توضیح: Logical Volume با سیستم فایل ext4 فرمت شده و به دایرکتوری /mnt/mylv mount میشود.
اگر بخواهید LVM را حذف کنید، باید مراحل را به ترتیب معکوس انجام دهید: ابتدا Logical Volume، سپس Volume Group و در نهایت Physical Volume.
این مراحل همه دادههای موجود روی LVM را پاک میکنند. قبل از شروع، از دادههای خود پشتیبان بگیرید.
توضیح: lvremove Logical Volume mylv را حذف میکند. سیستم از شما تأیید میگیرد.
توضیح: vgremove Volume Group myvg را حذف میکند. اگر LVهای فعالی داشته باشد، قبل از حذف VG باید آنها را حذف کنید.
توضیح: pvremove برچسبهای LVM را از Physical Volumeها پاک میکند و آنها را به حالت پارتیشن عادی بازمیگرداند.
اگر نمیخواهید Physical Volume را بهطور کامل حذف کنید، میتوانید فقط آن را از Volume Group خارج کنید:
این دستور /dev/sdb1 را از Volume Group myvg خارج میکند، اما برچسب LVM روی آن باقی میماند.
| مرحله | دستور | توضیح |
|---|---|---|
| نمایش دیسکها | lsblk یا sudo fdisk -l |
شناسایی دیسکها و پارتیشنها |
| ایجاد PV | sudo pvcreate /dev/sdX1 |
تبدیل پارتیشن به Physical Volume |
| ایجاد VG | sudo vgcreate myvg /dev/sdX1 |
ترکیب PVها در یک Volume Group |
| ایجاد LV | sudo lvcreate -n mylv -L 10G myvg |
ایجاد Logical Volume |
| فرمت و نصب | sudo mkfs.ext4 /dev/mapper/myvg-mylv sudo mount /dev/mapper/myvg-mylv /mnt/mylv |
فرمت و نصب Logical Volume |
| حذف LV | sudo lvremove /dev/mapper/myvg-mylv |
حذف Logical Volume |
| حذف VG | sudo vgremove myvg |
حذف Volume Group |
| حذف PV | sudo pvremove /dev/sdX1 |
پاک کردن برچسب LVM از پارتیشن |
lsblk دیسکهای خود را شناسایی کنید./dev/sdb1) را با pvcreate به LVM اضافه کنید.testvg ایجاد کنید.testlv با اندازه ۲ گیگابایت ایجاد کنید.ext4 فرمت کرده و به /mnt/testlv mount کنید.